
drop table if EXISTS jms_dm.dm_transfer_mistake_send_detail_dt

create external table jms_dm.dm_transfer_mistake_send_detail_dt (
date_time string comment '数据日期（签收时间）',
bill_code string comment '运单号',
ordersource_name string comment '订单来源',
package_code string comment '包号',
package_number string comment '集包编码',
scan_user string comment '扫描员',
scan_user_code string comment '扫描员工号',
scan_pistol_id string comment '扫描设备编号',
scan_data_source string comment '扫描数据来源',
send_scan_time string comment '装车发件扫描时间',
shd_next_station string comment '应发件下一站',
shd_next_station_code string comment '应发件下一站code',
send_next_station string comment '发件下一站',
send_next_station_code string comment '发件下一站code',
agent_code string comment '代理区编码',
agent_name string comment '代理区名称',
center_name string comment '中心名称',
center_code string comment '中心编码',
dest_center_name string comment '目的中心名称',
dest_center_code string comment '目的中心编码',
sign_time string comment '签收时间',
sign_site string comment '签收网点',
sign_site_code string comment '签收网点编码',
sign_cande_codes string comment '签收网点所属派货中心',
sign_cande_names string comment '签收网点所属派货中心',
first_code string comment '一段码',
second_code string comment '二段码',
third_code string comment '三段码',
first_center_name string comment '运单一段码对应目的中心',
first_center_code string comment '运单一段码对应目的中心code',
return_type int comment '退回件类型 4退回,5转寄',
is_mistake int comment '是否错发 1-错分,0-非错发',
mistake_type int comment '错发类型0-无错发、1-无一段码,2-无规划路由,3-调度指令,4-临时转运,5-一段码异常、6-上环节建包异常、7-设备因素、8-退回件、9-转寄件、10-扫描删除、11-人为因素,12-错装,13-一段码无目的中心',
is_delete int comment '是否删除1是0否',
virt_code	string	comment '虚拟代理区code',
virt_name	string	comment '虚拟代理区name',
provider_id	 string	   comment '省份id',
provider_desc string     comment '省份',
arrived_next_code	 string	   comment '到件下一站code',
arrived_next_name	 string	   comment '到件下一站',
create_package_org_code	 string	   comment '建包操作组织code',
create_package_org_name	 string	   comment '建包操作组织',
create_bagg_opt_org string  comment '上环节建包异常'
) COMMENT '错发率-明细表'
PARTITIONED BY (dt STRING COMMENT '数据日期')
STORED AS PARQUET
LOCATION '/dw/hive/jms_dm.db/external/dm_transfer_mistake_send_detail_dt'
TBLPROPERTIES (
'discover.partitions'='false',
'parquet.column.index.access'='true'
);


----hive

alter table jms_dm.dm_transfer_mistake_send_detail_dt add COLUMNS(
main_route_code  string COMMENT '主用路由编码',
main_route_name  string COMMENT '主用路由名称',
standby_route_code  string COMMENT '备用路由编码',
standby_route_name  string COMMENT '备用路由名称',
last_route_code  string COMMENT '兜底路由编码',
last_route_name  string COMMENT '兜底路由名称',
dispatch_code  string COMMENT '调度指令任务号',
temp_shipment_no  string COMMENT '临时转运任务号'
)cascade;

----doris

alter table jms_dm.dm_transfer_mistake_send_detail_dt add COLUMN(
main_route_code  varchar(200) COMMENT '主用路由编码',
main_route_name  varchar(200) COMMENT '主用路由名称',
standby_route_code  varchar(200) COMMENT '备用路由编码',
standby_route_name  varchar(200) COMMENT '备用路由名称',
last_route_code  varchar(200) COMMENT '兜底路由编码',
last_route_name  varchar(200) COMMENT '兜底路由名称',
dispatch_code  varchar(200) COMMENT '调度指令任务号',
temp_shipment_no  varchar(200) COMMENT '临时转运任务号'
);

---hive 2024-01-05
alter table jms_dm.dm_transfer_mistake_send_detail_dt add COLUMNS(
    mistake_type0  int  comment'错发类型t-1'
    ,mistake_type1  int  comment'错发类型t'
    ,mistake_type2  int  comment'错发类型t+1'
	,main_route_code0     string comment'主用路由编码t-1'
    ,main_route_name0     string comment'主用路由名称t-1'
    ,standby_route_code0  string comment'备用路由编码t-1'
    ,standby_route_name0  string comment'备用路由名称t-1'
    ,last_route_code0    string COMMENT '兜底路由编码t-1'
    ,last_route_name0     string COMMENT '兜底路由名称t-1'
	,main_route_code2     string comment'主用路由编码t+1'
    ,main_route_name2     string comment'主用路由名称t+1'
    ,standby_route_code2  string comment'备用路由编码t+1'
    ,standby_route_name2  string comment'备用路由名称t+1'
    ,last_route_code2 string COMMENT '兜底路由编码t+1'
    ,last_route_name2 string COMMENT '兜底路由名称t+1'
)CASCAD
--doris
alter table jms_dm.dm_transfer_mistake_send_detail_dt add COLUMN(
    mistake_type0   int  comment'错发类型t-1'
    ,mistake_type1  int  comment'错发类型t'
    ,mistake_type2  int  comment'错发类型t+1'
	,main_route_code0     varchar(600) comment'主用路由编码t-1'
    ,main_route_name0     varchar(600) comment'主用路由名称t-1'
    ,standby_route_code0  varchar(600) comment'备用路由编码t-1'
    ,standby_route_name0  varchar(600) comment'备用路由名称t-1'
    ,last_route_code0     varchar(600) comment'兜底路由编码t-1'
    ,last_route_name0     varchar(600) comment'兜底路由名称t-1'
	,main_route_code2     varchar(600) comment'主用路由编码t+1'
    ,main_route_name2     varchar(600) comment'主用路由名称t+1'
    ,standby_route_code2  varchar(600) comment'备用路由编码t+1'
    ,standby_route_name2  varchar(600) comment'备用路由名称t+1'
    ,last_route_code2     varchar(600) COMMENT'兜底路由编码t+1'
    ,last_route_name2     varchar(600) COMMENT'兜底路由名称t+1'
)
----------------------------------------------------------
--2024.03.01
CREATE EXTERNAL TABLE jms_dm.dm_transfer_mistake_send_detail_mid_dt(
  waybill_no string COMMENT '单号', 
  sign_time string COMMENT '签收时间', 
  sign_site string COMMENT '签收网点名称', 
  sign_site_code string COMMENT '签收网点code', 
  out_distribution_code string COMMENT '签收网点的可派货中心code', 
  out_distribution_name string COMMENT '签收网点的可派货中心code', 
  send_time string COMMENT '发件时间', 
  center_name string COMMENT '中心名称', 
  center_code string COMMENT '中心编码', 
  scan_user string COMMENT '发件扫描员扫描员', 
  scan_user_code string COMMENT '发件扫描员编码', 
  source string COMMENT '来源', 
  pistol_id string COMMENT '巴枪id', 
  next_station_code string COMMENT '下一站中心编码', 
  next_network_type string COMMENT '下一站中心类型', 
  package_code string COMMENT '包号', 
  transfer_code string COMMENT '任务号', 
  ordersource_name string COMMENT '订单来源', 
  waybill_dest_center_code string COMMENT '运单表目的中心code', 
  waybill_dest_center_name string COMMENT '运单表目的中心', 
  waybill_terminal_dispatch_code string COMMENT '三段碼', 
  order_dest_center_code string COMMENT '订单表目的中心code', 
  order_dest_center_name string COMMENT '订单表目的中心name', 
  order_terminal_dispatch_code string COMMENT '订单表三段码', 
  arrival_site_code string COMMENT '到件网点', 
  arrival_site_name string COMMENT '到件网点', 
  arrival_scan_time string COMMENT '到件网点', 
  new_reback_terminal_code string COMMENT '中心发件前有退转对应新信息：三段码', 
  new_receiver_province_id string COMMENT '中心发件前有退转对应新信息：省id', 
  new_receiver_city_id string COMMENT '中心发件前有退转对应新信息：市id', 
  new_receiver_area_id string COMMENT '中心发件前有退转对应新信息：区id', 
  new_apply_type_code string COMMENT '中心发件前有退转对应新信息：退转类型', 
  is_reback_after string COMMENT '中心发件前有退转对应新信息：是否有退转', 
  rk1 string COMMENT '中心发件前有退转对应新信息排序', 
  old_receiver_province_id string COMMENT '中心发件后有退转对应新信息：三段码', 
  old_receiver_city_id string COMMENT '中心发件后有退转对应新信息：省id', 
  old_receiver_area_id string COMMENT '中心发件后有退转对应新信息：市id', 
  is_reback_before string COMMENT '中心发件后有退转对应新信息：区id', 
  apply_type_code string COMMENT '中心发件后有退转对应新信息：退转类型', 
  old_reback_terminal_code string COMMENT '中心发件后有退转对应新信息：是否有退转', 
  rk2 string COMMENT '中心发件后有退转对应新信息排序', 
  terminal_dispatch_code string COMMENT '有退转件的三段码', 
  first_code string COMMENT '有退转件的三段码', 
  second_code string COMMENT '有退转件的三段码', 
  third_code string COMMENT '有退转件的三段码')
COMMENT '临时表'
PARTITIONED BY ( 
  dt string COMMENT 'yyyy-MM-dd')
ROW FORMAT SERDE 
  'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe' 
STORED AS INPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat' 
OUTPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
  'hdfs://yl-bg-hdp/dw/hive/jms_dm.db/external/dm_transfer_mistake_send_detail_mid_dt'